Skip to content

Conversation

MichaelHills
Copy link
Contributor

Attempting a fix for #52 but running into compile errors. Also note that the generated code goes from 50k lines to like 270k lines and in debug goes from 18s to 88s.

error[E0587]: type has conflicting packed and align representation hints
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:185578:1
       |
185578 | / pub struct FndrOpaqueInfo {
185579 | |     pub opaque: [i8; 16usize],
185580 | | }
       | |_^

error[E0588]: packed type cannot transitively contain a `#[repr(align)]` type
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:186145:1
       |
186145 | / pub struct HFSCatalogFolder {
186146 | |     pub recordType: i16,
186147 | |     pub flags: u_int16_t,
186148 | |     pub valence: u_int16_t,
...      |
186155 | |     pub reserved: [u_int32_t; 4usize],
186156 | | }
       | |_^
       |
note: `FndrOpaqueInfo` has a `#[repr(align)]` attribute
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:185578:1
       |
185578 | / pub struct FndrOpaqueInfo {
185579 | |     pub opaque: [i8; 16usize],
185580 | | }
       | |_^

error[E0588]: packed type cannot transitively contain a `#[repr(align)]` type
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:186272:1
       |
186272 | / pub struct HFSPlusCatalogFolder {
186273 | |     pub recordType: i16,
186274 | |     pub flags: u_int16_t,
186275 | |     pub valence: u_int32_t,
...      |
186286 | |     pub folderCount: u_int32_t,
186287 | | }
       | |_^
       |
note: `FndrOpaqueInfo` has a `#[repr(align)]` attribute
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:185578:1
       |
185578 | / pub struct FndrOpaqueInfo {
185579 | |     pub opaque: [i8; 16usize],
185580 | | }
       | |_^

error[E0588]: packed type cannot transitively contain a `#[repr(align)]` type
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:186460:1
       |
186460 | / pub struct HFSCatalogFile {
186461 | |     pub recordType: i16,
186462 | |     pub flags: u_int8_t,
186463 | |     pub fileType: i8,
...      |
186479 | |     pub reserved: u_int32_t,
186480 | | }
       | |_^
       |
note: `FndrOpaqueInfo` has a `#[repr(align)]` attribute
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:185578:1
       |
185578 | / pub struct FndrOpaqueInfo {
185579 | |     pub opaque: [i8; 16usize],
185580 | | }
       | |_^

error[E0588]: packed type cannot transitively contain a `#[repr(align)]` type
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:186686:1
       |
186686 | / pub struct HFSPlusCatalogFile {
186687 | |     pub recordType: i16,
186688 | |     pub flags: u_int16_t,
186689 | |     pub reserved1: u_int32_t,
...      |
186702 | |     pub resourceFork: HFSPlusForkData,
186703 | | }
       | |_^
       |
note: `FndrOpaqueInfo` has a `#[repr(align)]` attribute
      --> /Users/mikeh/repos/coreaudio-sys/target/debug/build/coreaudio-sys-f703e57cba00ad27/out/coreaudio.rs:185578:1
       |
185578 | / pub struct FndrOpaqueInfo {
185579 | |     pub opaque: [i8; 16usize],
185580 | | }
       | |_^

error: aborting due to 5 previous errors

Some errors have detailed explanations: E0587, E0588.
For more information about an error, try `rustc --explain E0587`.
error: could not compile `coreaudio-sys`

@MichaelHills
Copy link
Contributor Author

@simlay have you experienced those kinds of errors before with bindgen? See PR description. AURenderEvent is appearing in the generated code so that's good.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant